home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
STUTTGART
/
LANG
/
C
/
LIB
/
DESKLIB
/
CORE
/
DeskLib
/
Docs
/
BetaUpdate
< prev
next >
Wrap
Text File
|
1995-09-02
|
16KB
|
590 lines
Updates between DeskLib beta versions since version 2.16 .
2.30 (02 Sep 1995)
02 Sep 1995
Added filetypes MSX2, RLE, COLORIX, FITS, HAWKV9, REPLAY in File.h
Added GFX_Mode, GFX_SetOrigin.
Added osbyte_WRITEVDUDRIVERBANK and osbyte_WRITEDISPLAYHARDWAREBANK to
the osbyte enumeration.
Fixed a bug in Sprite_MemorySize - it now works with 'double pixel'
modes.
Added Sprite_Select.
Removed #include <stdlib.h> from Window.c.GetInfo,ModeChange,ParentName
28 Aug 1995
Fixed prototype of Filter_DeRegisterPostFilter - ie added last argument
'int eventmask'.
Added File_ReadExtent
Added Filing_SingleDirEntry, Filing_SingleDirEntry2.
Filing_ScanDir and Filing_ScanDirByDir made reenterent.
Fixed bugs in Filter_RegisterPostFilter, Filter_DeRegisterPostFilter.
Fixed prototype of Filter_DeRegisterPostFilter in 'Filter.h'.
Added Window_MoveWindow.
Made all header files '#include "xxx.h"' rather than '#include
"DeskLib:xxx.h"'.
Debug_Assert now calls abort().
Renamed File_AllocLoad to File_AllocLoad0.
26 Aug 1995
Made all assembler files use 'GET ^.h.RegDefs' instead of 'GET
h.RegDefs' so that objasm 2.00 works with the new directory structure.
Changed __DeskLib_SDLS_Stubs_<Libname> to DeskLib__SDLSStubs_<Libname>
in all '!DLSources.Libraries.*.OtherStubs' files. This is because objasm
2.00 doesn't like names starting with a '_'.
25 Aug 1995
Changed some of the Debug_ macros so they use '(...) ? ... : ...' rather
than 'if (...) ...'. This is to avoid use of Debug_ calls affecting
which 'if' statement an 'else' statement belongs to.
Added bit to 'DeskLib.Docs.DynamLink.SDLS_Apps' which explains why DLL
clients have to make do with the standard Error_ functions in the Error
DLL.
23 Aug 1995
Removed cdll from 'DLSources.Bin' and updated '!DeskLib.!DLLs' to
version 1.03 of the SDLS, which has now been released.
Included the latest version 1.04 of Pane2
Made versions of the DLLs the same as the version mentioned in each
sub-library's header file.
2.29beta (31 Jul 1995)
31 Jul 1995
Changed to use objasm instead of as when making OSObj header files. This
should hopefully clear up the problems with link.
Made 'DLSources.Scripts.DLL.CleanDLL' remove
<libname>.DLL.Header,Stubs,PlainStubs,OSObj as well as the normal .o
files
Added casts from int to event_type in Event.c - cc5 complains.
2.28beta (31 Jul 1995)
29 Jul 1995
Icon
Icon_GetText
bug fix: now sets terminter in returned string rather than
the icon's buffer.
27 Jul 1995
Added printer message enums to message_action in Wimp.h
Made EachDLL/Static make 'every' output error message if there is an
error.
Made WimpSWIs.c.DLLPoll cast an enum to a pointer via an int, to compile
with cc 5.
Changed flag-syntax of the 'every' command slightly.
25 Jul 1995
Made Core.h #include <stddef.h> instead of #define NULL 0
22 Jul 1995
Wimp
Added Wimp_StartTask3
Wimp_GetWindowInfoNoIcons (RO 3.10 or later).
Filing
Added Filing_CanonicalisePath
KernelSWIs
Added OS_SWINumberTo/FromString
Added OS_GSTrans
Core
Removed OSCLI (now in KernelSWIs)
Error
Added error_STATIC
Window
Added Window_CreateOrig()
Window_DeleteOrig()
Window_ForceWholeRedraw()
File
Added File_GetExtent()
Wimp
Added message_FILERx messages numbers to message_action enum typedef.
A few scripts added for !DLUser
17 Jul 1995
Adding EasyC versions of !TestApp.
15 Jul 1995
Made all headers C++ (eg EasyC++) compatible (hopefully), by putting
#ifdef __cplusplus extern "C" { ... } around declarations.
Added DeskLib:o.Debug.uniquefile - sends diagnostics to unique file using tmpnam().
Menu2
Now doesn't attempt to free menus created by custom function.
Added Menu2_CreateFromMsgs
2.27beta (11 Jul 1995)
10 Jul 1995
Added debug_level and Debug1_Printf, Debug2_Printf ... Debug5_Printf to
'DeskLib:Debug.h'.
Put lots of UNUSED( reference) in library functions, to avoid cc warning
against unused parameters. There are still lots of warnings when
compiling, mostly 'xxx may be used before being set', and Mem things
which I don't dare change!
09 Jul 1995
Cleaned up many of the source files - eg #include "DeskLib:Foo.h" rather
than "Foo.h". Also made all sources #include the library's main header
file, to ensure consistency between declarations and definitions. The
header files all use cc -fh to check this sort of thing.
The DeskLib library makefiles now use 'cc -I,C:' instead of 'cc
-I,DeskLib:,C:', and they all have stricter compiler checking.
Made a script <DeskLib_Sources$Dir>.Scripts.Static+DLL.MakeAll2 which
remakes everything - new makefiles, trimmed headers etc. This has made
my life a lot easier.
08 Jul 1995
Removed dependancies on "kernel.h" so DeskLib can be used with gcc:
Changed Wimp_SpriteOp to use a simple array of 10 ints instead of a
_kernel_swi_regs. Removed #include "kernel.h" from
DeskLib:Error/WimpSWIs.
NB I haven't tested DeskLib and gcc together...
Made Save.h #include <stdlib.h> for size_t
Put the DLL Wimp_Poll SWI veneers into the WimpSWIs library, instead of
having a separate DLLPoll library.
Added Font_Paint3 - veneer for the RISC OS 3 Font_Paint3 SWI.
Added: Font2 library. This rovides fonts which are automatically updated
on mode changes.
2.26beta (06 Jul 1995) -----------------------------------------------
06 Jul 1995
Recompiled all DLL .c files and remade the libraries.
Fixed incorrect #defines of pane_HORIZ/VERT in Pane.h
05 Jul 1995
Put latest version of DLLManager in '!DeskLib.!DLLs.'. This should allow
the DLL version of TestApp to be run.
Put the latest version of the SDLS tool 'cdll' in '!DLSources.Bin.'.
This is needed only when remaking DLLs etc.
24 Jun 1995
Made a few changes to the header-file comments.
2.25beta (23 Jun 1995) -----------------------------------------------
23 Jun 1995
DeskLib now provided as 6 zip files.
Improved the StrongHelp file.
22 Jun 1995
Added Menu2 library - higher level support for menus.
Event
Added typedef 'event_claimorreleasefn' for the Event_Claim/Release
functions.
21 Jun 1995
Window
Added Window_GainCaret
Changed Window_GetInfo3 to return an (os_error *).
Icon
Small bug-fix in Icon.c.IncDec - caret is moved to end of
writable icon after each increment/decrement.
17 Jun 1995
Made all the DLLs be named 'Freeware_1.DeskLib.xxx'. This requires SDLS
1.03 or later.
Added a few short comments to many typedef structs in Wimp.h. These will
be made into links in the StrongHelp file.
2.24beta (15 Jun 1995)-----------------------------------------
15 Jun 1995
ADDED
Debug - a few standard functions, with a choice of different libraries
to send debug data to pipes, taskwindows etc.
SmError - an implementation of the Error_ functions for use with
command-line programs. Error messages are sent to stderr
rather than Wimp_ReportError.
11 Jun 1995
AMMENDED
Pane2
A few minor bugfixes.
ADDED
Filing (Sergio Monesi)
Easy access to files informations, directory scans, filenames
handling.
AMMENDED
Error
Added error_FIXED macro which defines a compact os_error block.
Added error_global, a global os_error.
Changed Error_PLACE to error_PLACE
KernelSWIs
Added OS_SWINumberToString
Added OS_SWINumberFromString
NB AT THE MOMENT, These are both macros for
'SWI_NumberTo/FromString', which is a rather non-standard name.
Changed structure of auto-generated StrongHelp file - no subdirs now,
because StrongHelp wouldn't find 'Wimp_Poll' because 'Poll' wasn't in
the 'Wimp' directory (Wimp_Poll is declared in 'WimpSWIs.h').
Moved definition of 'event_taskname' into a separate file in the Event
sublibrary directory. This is so that using Error_ functions in a
non-wimp program doesn't pull in the whole Event library.
Added a Debug header and 4 alternative debug libraries. The header
macros-out all Debug calls unless DeskLib_DEBUG is defined, allowing
easy generation of normal and debug versions of a project from the same
source code. The debug libraries are in 'DeskLib:o.Debug.' - the idea is
that projects are linked with just one of them, so that the user can
choose what sort of diagnostics they want.
2.23beta (03 Jun 1995) --------------------------------------------------
File_IsDir returns TRUE for images now.
Made comments in all headers adjacent to declarations so that auto-help
works better.
Tidied up !TestApp's static makefile.
Added a couple more example programs, including Andrew Sellor's
excellent 'Widget5' image processing program.
Re-made the DLL DeskLib with version 1.02 of the SDLS, which works with
Link 4.00. Still breaks DRLink though...
Changed OS_File to SWI_OS_File in 'File.h'.
Added '!DLSources.Bin.MakeCHelp' which generates simple StrongHelp files
from a header file. '!DLSources.Bin.MakeHelps' uses MakeCHelp to
generate a StrongHelp help system for all headers within a directory,
such as '!DeskLib.H_doc.'. '!DeskLib.MakeHelp' is a simple TaskObey file
which calls MakeHelps with appropriate parameters for the DeskLib
headers. It takes about 5 minutes to finish.
The DeskLib help files are 1.5MB initially, but StrongHelp's 'CleanCopy'
program reduces this to under 700k.
2.22beta (19 May 1995) --------------------------------------------------
Fixed a very hacky bit of code in the Window/Template sublibraries - the
'TempDefs.h' was duplicated in the Windows sublibrary. This meant that
Window_ModeChange was trying to access Template global variables which
didn't work with the DLL DeskLib - external globals must always be
referenced via a function call.
Template.h now declares the globals used by Window_ModeChange, together
with the standard function veneers needed with the SDLS.
!DLSources.!Run now Filer_OpenDir !DLSources.
!DesLib.!Boot now Filer_Boot's !DeskLib.!DLLs.
2.21beta (18 May 1995) --------------------------------------------------
Got rid of the separate 'DLL' and 'Static' subdirectories in
'!DLSources.Libraries'. There is now a zero-length 'IsDLL' file in each
sublibrary directory which can be made into a DLL.
Made !DLSources.!Boot set up the path variable 'DeskLib_Commands$Path'
to point to '!DLSources.Scripts.Commands.'.
Added extra commands 'DeskLib_Commands:EachDLL' and
'DeskLib_Commands:EachStatic' which are similar to 'Every', except they
run the given command on every DLL/~DLL DeskLib sublibrary, by looking
for the presence/absence of the 'IsDLL' file.
Changed the scripts in '!DLSources.Scripts.DLL/Static' to use EachDLL
and EachStatic.
Made each DLL slightly smaller by not including the stubs of 'meta' DLLs
used by the original DLL. These only have to included in clients, not
DLLs.
Included some (imcomplete) example code for the Print library.
Changed '#include "DeskLib:xxx.h"' to '#include "xxx.h"' in some of the
DeskLib headers. This is because of the bug in cc (4) which doesn't work
with such paths unless -I,C: is used.
(16 May 1995)
AMENDED
Menu
Small bug-fix for indirected menu-titles from Neil Tarrant.
2.20 (14 May 1995) ----------------------------------------------------------
This is a beta release.
Dynamic Linking
---------------
This version now provides two versions of DeskLib - the normal one, plus
a set of Dynamically Linkable Libraries (DLLs) and Stubs files which use
the Straylight Dynamic Linking System (SDLS) to share DeskLib code.
(There is actually a third version of DeskLib which is used when making
DeskLib DLLs).
See 'Docs.DynamLink.SDLS_Apps' for complete information on how to make
an existing application use the DLL version of DeskLib.
See 'Docs.DynamLink.DLLchanges' to find out about the various new macros
which are set in DeskLib headers to allow compilation for normal, client
and DLL programs.
See 'Docs.DynamLink.RndDLLInfo' for extra snippetts of info about the
DLL DeskLib.
Various #ifdef stuff has been added to various headers to give different
compiles for DLL clients or DLL libraries. These changes are needed to
make global variables work transparently under the SDLS.
A few changes have been made to various libraries to support global
variables properly under the SDLS. These changes are basically to add a
veneer function which returns the address of each global variable
supported by the sub-library. These functions are only compiled when a
DLL-version of a library is being made.
Please note that using DeskLib for normal (static) linking is completely
unaffected by the presence of the DLL stuff, because of the use of
various macros and #ifdef/#ifndef in the DeskLib headers and source
files.
New organisation of source files etc
------------------------------------
There have benn some fairly radical changes to the directory structure
of the DeskLib source code directory. This is to accomodate the
additional makefiles/.o files needed to create a dynamically-linkable
version of DeskLib.
All sources are now in a '!DLSources' application directory, which also
contains various scripts and template makefiles which are needed.
Makefiles in individual sublibrary directories are now generated
automatically from template makefiles in '!DLSources.TemplateMF'. The
system variable <DeskLib_Sources$Dir> points to the !DLSources
directory. The Obey files in '!DLSources.Scripts' do various things such
as create makefiles, run makefiles etc. See '!DLSources.!Help' for more
information.
'!DLSources.Bin' is added to your Run$Path using 'DeskLib_Run:'. It
contains various utilities which are used by some of the scripts. These
utilities provide usage information if run with no parameters. They are:
Makatic - Makes makefiles for a directory by adding a list of .o files
to the start of a template makefile.
CTrim - Strips comments and excess white space from C source code. The
output file is only overwritten if it differs from the new trimmed file,
thus preserving the timestamp when possible.
Every - Performs a command on every dir and/or file in a directory. Can
also act recursively.
Other
-----
Changed !TestApp so that a DLL-version can be made as well as the
standard statically-linked one.
Added a '!DLUser' directory for user's own DeskLib libraries. 'DeskLib:'
now resolves to 'DeskLib_User:,DeskLib_Core:', where 'DeskLib_Core:' is
the !DeskLib directory and 'DeskLib_User:' is the !DLUser directory.
This means that you can write your own DeskLib libraries but keep
everything (even your header files) separate from the main DeskLib
directories. This should simplify things when new versions of DeskLib
are released.
Changed the !DeskLib.!Boot file to set 'DeskLib_Core:' etc.
Corrected the comments in DeskLib:Wimp.h about which window flags are
'old-style'.
Added Docs.QuickRefs.MenuData
Uncommented headers
-------------------
The !DeskLib directory contains two versions of the DeskLib header
files. The ones in '!DeskLib.h_doc' are the normal fully-commented ones
which should be read to find information about DeskLib functions, while
'!DeskLib.h' contains 'trimmed' versions, with all C comments removed
and some removal of excess white space.
The reason for doing this is that I got a bit fed up with having AMU
recompile lots of source code after I'd made a minor change to a comment
in a header. This was particularly bad when working on 'DeskLib:Core.h'
which is included (indirectly) by every DeskLib .c file.
Using the trimmed headers also improves compilation times slightly.
The '!DLSources.Bin.CTrim' file is used to generate the trimmed
headers. The Obey file '!DeskLib.TrimHead' runs this on each of the
headers in the !DeskLib directory.
Sub-libraries
-------------
ADDED
DLLPoll
This is only used by the DLL DeskLib. It could probably be replaced
by direct SWI calls in fact...
Dialog2
An alternative to the 'Dialog' library.
Print
Handles the wimp protocol for printing.
Pane2
Takes care of the redrawing of Pane windows.
2.16 (Apr 1995) --------------------------------------------------------------
Put in the contact addresses for the new moderators, Julian Smith and
Craig Beech.